//封装mysql模块并导出函数
// module.exports=()=>{}
//ES6给函数设置默认值 values = null  不给values传参，values就是null  传参的话就用传递的值
module.exports = (sql, values = null) => {
    //1.加载mysql模块，别忘了先npm i mysql
    const mysql = require('mysql');
    //2.创建链接对象（设置链接参数）
    const conn = mysql.createConnection({
        host: 'localhost',
        user: 'root',
        password: 'hwm11111',
        database: 'hwm'
    });

    //mysql操作也属于异步操作，所以可以使用Promise操作来进行封装
    return new Promise((resolve, reject) => {
        //这里写异步代码
        //3.连接到mysql服务器
        conn.connect();

        //4.完成增删改查
        conn.query(sql, values, (err, result) => {
            err ? reject(err) : resolve(result);
        });

        //5关闭连接
        conn.end();

    }).catch(e => {
        console.log('=========================================================');
        console.log('错误描述: ' + e.sqlMessage);
        console.log('错误的SQL: ' + e.sql);
        console.log('=========================================================');
    })
}
